package com.example.haoqisystem.Utils.excelUtils;

import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.BorderStyle;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.VerticalAlignment;

public class ExcelStyle {
    /**
     * 表格标题单元格样式
     * @param workbook
     * @param style
     * @return
     */
    public static HSSFCellStyle setHeadStyle(HSSFWorkbook workbook, HSSFCellStyle style) {
        // 设置背景色

        // 设置边框
        style.setBorderBottom(BorderStyle.THIN); // 下边框
        style.setBorderRight(BorderStyle.THIN);// 右边框
        style.setBorderLeft(BorderStyle.THIN);// 左边框
        style.setBorderTop(BorderStyle.THIN);// 上边框
        // 设置单元格的中心水平对齐-居中
        style.setAlignment(HorizontalAlignment.CENTER);
        // 设置单元格的垂直对齐类型-居中
        style.setVerticalAlignment(VerticalAlignment.CENTER);
        // 生成字体
        HSSFFont font = workbook.createFont();
        // 设置字体类型
        font.setFontName("微软雅黑");
        // 设置字体大小
        font.setFontHeightInPoints((short) 10);
        // 把字体应用到当前的样式
        style.setFont(font);
        return style;

    }

    /**
     * 表格主体单元格样式
     * @param workbook
     * @param style
     * @return
     */
    public static HSSFCellStyle setbodyStyle(HSSFWorkbook workbook, HSSFCellStyle style) {
        // 设置背景色
        // style.setFillForegroundColor(HSSFColor.LIGHT_YELLOW.index);
        // style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
        // 设置边框
        style.setBorderBottom(BorderStyle.THIN); // 下边框
        style.setBorderRight(BorderStyle.THIN);// 右边框
        style.setBorderLeft(BorderStyle.THIN);// 左边框
        style.setBorderTop(BorderStyle.THIN);// 上边框
        // 生成字体
        HSSFFont font = workbook.createFont();
        // 字体类型
        font.setFontName("微软雅黑");
        // 设置字体大小
        font.setFontHeightInPoints((short) 9);
        // 把字体应用到当前的样式
        style.setFont(font);
        return style;
    }
}
